package com.sun.umbrella.dao;

import com.sun.umbrella.domain.bo.RoleInfoBO;
import com.sun.umbrella.domain.entity.RoleInfoDO;
import com.sun.umbrella.domain.query.RoleInfoQuery;

import java.util.List;


/**
 * @author Jay
 * @version v1.0
 * @description 角色信息表
 * @date 2017-04-25 10:39
 */
public interface RoleInfoMapper {


    /**
     * 删除记录
     *
     * @param id
     * @return
     */
    int deleteByPrimaryKey(Integer id);


    /**
     * 保存记录
     *
     * @param record
     * @return
     */
    int insert(RoleInfoDO record);


    /**
     * 动态插入
     *
     * @param record
     * @return
     */
    int insertSelective(RoleInfoDO record);


    /**
     * 查询
     *
     * @param id
     * @return
     */
    RoleInfoDO selectByPrimaryKey(Integer id);


    /**
     * 更新记录(允许部分为空)
     *
     * @param record
     * @return
     */
    int updateByIdSelective(RoleInfoDO record);

    /**
     * 更新记录(不允许部分为空)
     *
     * @param record
     * @return
     */
    int updateById(RoleInfoDO record);

    /**
     * 查询角色记录总数量
     *
     * @param roleInfoQuery
     * @return
     */
    int countRoleInfoList(RoleInfoQuery roleInfoQuery);


    /**
     * 分页查询角色记录
     *
     * @param roleInfoQuery
     * @return
     */
    List<RoleInfoBO> queryRoleInfoList(RoleInfoQuery roleInfoQuery);
}